﻿namespace Nop.Plugin.Payments.UsaEpay.Models
{
    #region

    using System.Collections.Generic;
    using System.Web.Mvc;

    using Nop.Web.Framework;

    #endregion

    /// <summary>
    ///     The payment info model.
    /// </summary>
    public class PaymentInfoModel
    {
        /// <summary>
        /// Initializes a new instance of the <see cref="PaymentInfoModel"/> class.
        /// </summary>
        public PaymentInfoModel()
        {
            this.CreditCardTypes = new List<SelectListItem>();
            this.ExpireMonths = new List<SelectListItem>();
            this.ExpireYears = new List<SelectListItem>();
        }

        /// <summary>
        ///     Gets or sets the credit card type.
        /// </summary>
        [NopResourceDisplayName("Payment.SelectCreditCard")]
        [AllowHtml]
        public string CreditCardType { get; set; }

        /// <summary>
        ///     Gets or sets the card code.
        /// </summary>
        [NopResourceDisplayName("Payment.CardCode")]
        [AllowHtml]
        public string CardCode { get; set; }

        /// <summary>
        ///     Gets or sets the card number.
        /// </summary>
        [NopResourceDisplayName("Payment.CardNumber")]
        [AllowHtml]
        public string CardNumber { get; set; }

        /// <summary>
        ///     Gets or sets the cardholder name.
        /// </summary>
        [NopResourceDisplayName("Payment.CardholderName")]
        [AllowHtml]
        public string CardholderName { get; set; }

        /// <summary>
        ///     Gets or sets the credit card types.
        /// </summary>
        [NopResourceDisplayName("Payment.SelectCreditCard")]
        public IList<SelectListItem> CreditCardTypes { get; set; }

        /// <summary>
        ///     Gets or sets the expire month.
        /// </summary>
        [NopResourceDisplayName("Payment.ExpirationDate")]
        [AllowHtml]
        public string ExpireMonth { get; set; }

        /// <summary>
        ///     Gets or sets the expire months.
        /// </summary>
        [NopResourceDisplayName("Payment.ExpirationDate")]
        [AllowHtml]
        public IList<SelectListItem> ExpireMonths { get; set; }

        /// <summary>
        ///     Gets or sets the expire year.
        /// </summary>
        public string ExpireYear { get; set; }

        /// <summary>
        ///     Gets or sets the expire years.
        /// </summary>
        public IList<SelectListItem> ExpireYears { get; set; }
    }
}